package com.zhuiyun.pm.sys.role.service;



import com.zhuiyun.pm.page.PageRequest;
import com.zhuiyun.pm.page.PageResult;
import com.zhuiyun.pm.result.CommonResult;
import com.zhuiyun.pm.sys.menu.entity.MenuEntity;
import com.zhuiyun.pm.sys.role.entity.SysRoleEntity;

import java.util.List;

public interface SysRoleService {

    /**
     * 角色权限菜单树查询
     * @return
     */
    List<MenuEntity> getMenuTree(String menuName);
    /**
     * 全查+模糊查
     * @param pageRequest
     * @param roleName
     * @return
     */
    PageResult roleList(PageRequest pageRequest, String roleName);

    /**
     * 新增角色
     * @param sysRoleEntity
     * @return
     */
    Integer saveRole(SysRoleEntity sysRoleEntity);

    /**
     * 修改角色
     * @param sysRoleEntity
     * @return
     */
    Integer updateRole(SysRoleEntity sysRoleEntity);

    /**
     * 删除角色
     * @param id
     * @return
     */
    Integer deleteRole(Integer id);

    /**
     * 权限修改
     * @param sysRoleEntity
     * @return
     */
    Integer savePermissions(SysRoleEntity sysRoleEntity);

    /**
    * @Description 获取角色列表信息
    * @Author lzy
    * @Date 2023/3/14 19:48
    * @Return com.zhuiyun.pm.result.CommonResult
    */
    CommonResult getRoleList();
}
